home *** CD-ROM | disk | FTP | other *** search
/ The 640 MEG Shareware Studio 2 / The 640 Meg Shareware Studio CD-ROM Volume II (Data Express)(1993).ISO / clang / ctask.zip / TSK.MAC < prev    next >
Text File  |  1988-07-01  |  3KB  |  194 lines

  1. ;
  2. ;    CTask - Definitions for assembler routines
  3. ;
  4. ;    Public Domain Software written by
  5. ;        Thomas Wagner
  6. ;        Patschkauer Weg 31
  7. ;        D-1000 Berlin 33
  8. ;        West Germany
  9. ;
  10. ;    Define according to tskconf.h
  11. ;
  12. TSK_DYNAMIC    =    1
  13. TSK_NAMED    =    1
  14. TSK_NAMEPAR    =    1
  15. ;
  16. ST_KILLED    =    0
  17. ST_STOPPED    =    1
  18. ST_DELAYED    =    2
  19. ST_WAITING    =    3
  20. ST_ELIGIBLE    =    4
  21. ST_RUNNING    =    5
  22. ;
  23. ; Task flags
  24. ;
  25. F_TEMP         =    80h    ; Task is temporary
  26. F_CRIT        =    01h    ; Task is critical, may not be preempted
  27. ;
  28. NAMELENGTH    =    9
  29. ;
  30. tlink    struc
  31. ;
  32. tnext    dd    ?       ; next pointer
  33. tout    dd    ?    ; timeout counter
  34. reload    dd    ?    ; timeout counter reload
  35. strucp    dd    ?    ; structure pointer
  36. tstate  db      ?       ; timer state
  37. tkind   db      ?       ; timer kind
  38. ;
  39. tlink    ends
  40. ;
  41. ;
  42. tcb    struc
  43. ;
  44. next    dd    ?    ; pointer to next task in queue, undef if current
  45. queue    dd    ?    ; current queue head pointer, next queue if current
  46. stack    dd    ?    ; stack address
  47. stkbot    dd    ?    ; stack bottom
  48. prior    dw    ?    ; task priority
  49. iniprior dw    ?    ; initial task priority
  50. state    db    ?    ; task state
  51. flags    db    ?    ; task flags
  52. ;
  53. tqnext  dd    ?       ; next pointer
  54. tqtout    dd    ?    ; timeout counter
  55. tqrelo    dd    ?       ; timeout counter reload
  56. tqstru    dd    ?    ; struct pointer
  57. tqstat    db    ?    ; timer state
  58. tqkind    db    ?    ; timer kind
  59. ;
  60. retptr    dd    ?    ; return value pointer
  61. retsize    dw    ?    ; return value size
  62. ;
  63.     IF    TSK_NAMED
  64. tnfollo    dd    ?
  65. tnprev    dd    ?
  66. tnstrup    dd    ?
  67. tnkind    db    ?
  68. tnname    db    NAMELENGTH dup(?)
  69.     ENDIF
  70. ;
  71. tcb    ends
  72. ;
  73. flag        struc
  74. ;
  75. fwait_set    dd    ?
  76. fwait_clear    dd    ?
  77. fstate        dw    ?
  78.  
  79.     IF    TSK_DYNAMIC
  80. flflags    db    ?
  81.     ENDIF
  82.     IF    TSK_NAMED
  83. flfollo    dd    ?
  84. flprev    dd    ?
  85. flstrup    dd    ?
  86. flkind    db    ?
  87. flname    db    NAMELENGTH dup(?)
  88.     ENDIF
  89. ;
  90. flag        ends
  91. ;
  92. counter        struc
  93. ;
  94. cwait_set    dd    ?
  95. cwait_clear    dd    ?
  96. cstate        dd    ?
  97. ;
  98.     IF    TSK_DYNAMIC
  99. ctflags    db    ?
  100.     ENDIF
  101.     IF    TSK_NAMED
  102. ctfollo    dd    ?
  103. ctprev    dd    ?
  104. ctstrup    dd    ?
  105. ctkind    db    ?
  106. ctname    db    NAMELENGTH dup(?)
  107.     ENDIF
  108. counter        ends
  109. ;
  110. resource    struc
  111. ;
  112. rwaiting    dd    ?
  113. rowner        dd    ?
  114. rstate        dw    ?
  115. ;
  116.     IF    TSK_DYNAMIC
  117. rsflags    db    ?
  118.     ENDIF
  119.     IF    TSK_NAMED
  120. rsfollo    dd    ?
  121. rsprev    dd    ?
  122. rsstrup    dd    ?
  123. rskind    db    ?
  124. rsname    db    NAMELENGTH dup(?)
  125.     ENDIF
  126.  
  127. resource    ends
  128. ;
  129. mailbox        struc
  130. ;
  131. mwaiting    dd    ?
  132. mail_first    dd    ?
  133. mail_last    dd    ?
  134. ;
  135.     IF    TSK_DYNAMIC
  136. mbflags    db    ?
  137.     ENDIF
  138.     IF    TSK_NAMED
  139. mbfollo    dd    ?
  140. mbprev    dd    ?
  141. mbstrup    dd    ?
  142. mbkind    db    ?
  143. mbname    db    NAMELENGTH dup(?)
  144.     ENDIF
  145. mailbox        ends
  146. ;
  147. pipe        struc
  148. ;
  149. pwait_read    dd    ?
  150. pwait_write    dd    ?
  151. pwait_clear    dd    ?
  152. pbufsize    dw    ?
  153. pfilled        dw    ?
  154. pinptr        dw    ?
  155. poutptr        dw    ?
  156. pcontents    dd    ?
  157. ;
  158.     IF    TSK_DYNAMIC
  159. ppflags    db    ?
  160.     ENDIF
  161.     IF    TSK_NAMED
  162. ppfollo    dd    ?
  163. ppprev    dd    ?
  164. ppstrup    dd    ?
  165. ppkind    db    ?
  166. ppname    db    NAMELENGTH dup(?)
  167.     ENDIF
  168. pipe        ends
  169. ;
  170. wpipe        struc
  171. ;
  172. wwait_read    dd    ?
  173. wwait_write    dd    ?
  174. wwait_clear    dd    ?
  175. wbufsize    dw    ?
  176. wfilled        dw    ?
  177. winptr        dw    ?
  178. woutptr        dw    ?
  179. wcontents    dd    ?
  180. ;
  181.     IF    TSK_DYNAMIC
  182. wpflags    db    ?
  183.     ENDIF
  184.     IF    TSK_NAMED
  185. wpfollo    dd    ?
  186. wpprev    dd    ?
  187. wpstrup    dd    ?
  188. wpkind    db    ?
  189. wpname    db    NAMELENGTH dup(?)
  190.     ENDIF
  191. wpipe        ends
  192. ;
  193.  
  194.